package com.tfjybj.itoo.exam.provider.service;

import com.dmsdbj.itoo.tool.base.service.BaseServicePlus;
import com.dmsdbj.itoo.tool.business.ItooResult;
import com.tfjybj.itoo.exam.entity.SigninDetailsEntity;

import java.util.List;


/**
 * SigninDetailsService接口
 * signinDetails表
 *
 * @author 郭满亮
 * @version 2.0.0
 * @since 2.0.0 2019-03-19 09:21:41
 */
public interface SigninDetailsService extends BaseServicePlus<SigninDetailsEntity> {
    /**
     * 根据签到表id查询所有学生签到情况
     * @param signInId 签到表id
     * @return 所有学生签到情况
     * @author 郭满亮
     * @since  2019年3月20日10:08:00
     */
    ItooResult queryAllSigninDetails(String signInId);
//    /**
//     * 修改学生签到状态
//     * @param teachClassId 上课班id
//     * @param signinDetailsModels  所有学生集合
//     * @return 修改结果
//     * @author 郭满亮
//     * @since   2019年3月20日10:40:29
//     */
//    ItooResult modifyStudentState(String teachClassId, String state);
    /**
     * 根据上课班id查询radis所有学生签到状态
     * @param teachClassId  上课班id
     * @return  查询结果
     * @author 郭满亮
     * @since 2019年3月20日11:34:36
     */
    ItooResult queryRadisStudentState(String teachClassId);
    /**
     * 查询学生所在的上课班
     * @author 于云秀
     * @since 2019年3月20日
     * @param studentId
     * @return
     */
    List<SigninDetailsEntity> selectTeacherClass(String studentId);

    /**
     * 更新考生状态
     * @author 于云秀
     * @since 2019年3月20日
     * @param studentId
     * @param state
     * @return signinDetailss
     */
    int updateStudentState(String courseId, String studentId, String state);

    /**
     * 查询考生状态
     * @author 于云秀
     * @since 2019年3月24日
     * @param courseId
     * @param studentId
     * @return
     */
    List<SigninDetailsEntity> selectState(String courseId, String studentId);
}
